home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Xenosoft 2
/
Xenosoft 2 (Game collection)(1994).iso
/
bioforge
/
script
/
concntrl.scp
< prev
next >
Wrap
Text File
|
1994-11-21
|
20KB
|
889 lines
// OPENS THE CONTROL AREA DOOR
{ CNT_BTN3_USE
M PUSH_BUTTON CONTINUE
W 15
// CHECK TO SEE IF THE OPR SCENE HAS BEEN RUN; IF NOT, THE DOOR
// IS LOCKED
I ^Ç╗ = $Ç╗ THEN
{
@Ç║ (`Çç "This is a restricted area")
é
}
I ^å░ OR ^Ç╗ != 1 THEN
{
@Çå (`ÇÄ )
é
}
E
@Çå (`Çì , 150, -2048)
I ^äú = $é╗ THEN J #Çü
I ^äú = $é║ THEN J #Çâ
:OPEN_DR4
@Çì CNT_DOOR_OPEN
:TOP
â
// MAKE SURE THE PLAYER HASN'T PRESSED THE CLOSE BUTTON ON US
//IF _DR14_SPACE = _POSITIVE THEN RETURN
I @Ǽ (CURFIG,DR14) < 300 THEN J #Çé
// OKAY, THE PLAYER IS OUT OF RANGE SO CLOSE THE DOOR
:CLOSE_DR4
//IF @ISCURRENTCAMERA(CTR) THEN CAMERA CTR4
@Çì CNT_DOOR_CLOSE
//SUSPENDWHILE @PROCESS CNT_DOOR_CLOSE
//CAMERA UNLOCK
}
// AUTO OPENS CONTROL DOOR FROM INSIDE AND CLOSES IT FOR THE FORKLIFT
{ OPENCNT_CR_BOT
@Ç¥ OPENCNT
}
// AUTO OPENS CONTROL DOOR FROM INSIDE AND CLOSES IT
{ OPENCNT
I ^äú = $é╗ THEN
{
// IF @ISCURRENTCAMERA(CTR) THEN CAMERA CTR4
@Çì CNT_DOOR_OPEN
:POT
â
I @Ǽ (CURFIG,DR14) < 350 THEN J #Çå
E
{
// IF @ISCURRENTCAMERA(CTR) THEN CAMERA CTR4
@Çì CNT_DOOR_CLOSE
//SUSPENDWHILE @PROCESS CNT_DOOR_CLOSE
// CAMERA UNLOCK
}
}
}
// TRIGGER TO RUN WHEN LEX WALKS INTO THE HARDSUIT MACHINE
{ SUITTEST
{
I ^üå = 1 THEN
{
^üå = 0
@Çì HARDSUITMACHINE
}
// IF THE PLAYER HAS NOT MOVED AT LEAST THREE METERS FROM THE
// SUITTEST TRIGGER DON'T START THE HARDSUIT PROCESS AGAIN
: TEST
â
I @Çá (CURFIG SUITTEST) < 300 THEN
{
J #Çê
}
// PLAYER IS NOW MORE THAN THREE METERS FROM SUITTEST TRIGGER
^üå = 1
}
}
// THIS PROCESS OPENS AND CLOSES THE HARDSUIT MACHINE
{ HARDSUITMACHINE
// FREEZE LEX
I (@Ç¢ PLAYER) THEN
{
A OFF
o
}
//@@@ TRANSLATE F
E Q ("Can't find Lex /FFrench here /GKann Lex nicht finden.")
// RUN HARDSUIT MACHINE ANIMATION
@Ç¥ HARD_SUIT_CLOSE_CON
// CHECK FOR THE CURRENT FORM AND CHANGE IT
I (@Ç⌐ LEX) OR (@Ç⌐ LEXMIR ) THEN
{
ù HARD
^ïÉ = 100
i LEX HARDSUIT
}
E
{
ù LEX
@Ç¥ LEX_WOUNDS
}
@Ç¥ HARD_SUIT_OPEN_CON
// UNFREEZE LEX
I (@Ç¢ PLAYER) THEN
{
A ON
}
//@@@ TRANSLATE F
E Q ("Can't find Lex /FFrench /GKann Lex nicht finden.")
}
// 7.20 CONTROL ROOM/REACTOR MONITOR
{ CR_REACTORMONITOR
"rtrc"
m
"bkga" 1
"rhdl" "REACTOR MONITOR" // @@@PLEASE TRANSLATE
"rsub" ""
"rsdb" ""
"rpdb" ""
"rpub" ""
"xitb" $Ç¡ "EXIT/FSORTIE/GZURÜCK"
I (^ç£ ) THEN
ê "rtrt" "react2"
E
// HAS VARIABLES IN IT SO IS A LIST -JAR.
j "rtrt" "reacto"
:CONTROL_MONITOR_LOOP
â
J #Çï
:RPUB_REPEAT
:RPUB_BUTTON
@Çå (`ü« , 255, -1024)
k "rtrt" $Ç│
// EVENTUALLY THIS NEED A CASE ON _CALLING AREA TO DEFINE SCROLLING LIST
J #Çï
:RPDB_REPEAT
:RPDB_BUTTON
@Çå (`ü« , 255, -1024)
k "rtrt" $Ç┤
// EVENTUALLY THIS NEED A CASE ON _CALLING AREA TO DEFINE SCROLLING LIST
J #Çï
:RSUB_REPEAT
:RSUB_BUTTON
@Çå (`ü« , 255, -1024)
k "rtrt" $Ç╖
// EVENTUALLY THIS NEED A CASE ON _CALLING AREA TO DEFINE SCROLLING LIST
J #Çï
:RSDB_REPEAT
:RSDB_BUTTON
@Çå (`ü« , 255, -1024)
k "rtrt" $Ç╕
// EVENTUALLY THIS NEED A CASE ON _CALLING AREA TO DEFINE SCROLLING LIST
J #Çï
:XITB_BUTTON
:ESCAPE_BUTTON
@Çå (`ü▓ )
}
// 7.22 CONTROL ROOM/MAINTENANCE MONITOR
// CR_MAINTENANCEMONITOR USES GRMAINTENANCELOG WITH THIS _CURRENT_LEVEL
// SEE MAINMON_USE
// 7.23 CONTROL ROOM/ALIEN TECH BIKE FILES & SCHEMATICS
// 7.24 CONTROL ROOM/ALIEN TECH BIKE NOTES & EXPERIMENTS
// 7.30 MACHINE SHOP/ BIKE NOTES & REPAIRS
// 7.XX CONTROL ROOM/HANGAR MONITOR (XX - NOT LISTED IN SCREENPLAY)
{ CR_HANGERMONITOR
P ~ÇÇ // VARIABLE TO KILL BIKE FLASHING PROCESS
P ~Çü // LOWER ELEVATOR TO BIKE LEVEL -BUTTON PRESSED
P ~Çé // ADD LOG
~ÇÇ = 0
~Çé = 0
~Çü = 0
"hngr"
:HANGER_ATTRACT
// ATTRACT SCREEN
m
"arga" 1
"hadl" $Ǽ "HANGAR DATA FILES/FHANGER DATA FILES/GFLUGDATEN"
"aidb" "ICARUS DATA/FICARUS DATA/GICARUSDATEN"
"aiab" "ICARUS ACCESS/FICARUS ACESS/GICARUS ZUTRITT"
"adlb" "HANGAR LOGS/FHANGER LOGS/GFLUGLOGBUCH"
"axtb" $Ç¡ "EXIT/FSORTIE/GZURÜCK"
// SUSPEND TO ALLOW SYS TEM TO DISPLAY DATA
â
:HANGER_LOOP
â
J #Çÿ
:HANGER_LOGS
m
"hadl" "ICARUS FLIGHT LOGS/FICARUS FLIGHT LOGS/GICARUS FLUGLOGBUCH"
ê "hltt" "biketf" 60 80 110
"supb" ""
"sdnb" ""
"pupb" ""
"pdnb" ""
"hxtb" $Ç¡ "EXIT/FSORTIE/GZURÜCK"
// SUSPEND TO ALLOW SYSTEM TO DISPLAY DATA
â
~Çé = 1
// JUMP TO MAIN HANGER LOOP
J #Çÿ
:HANGER_DATA
m
"ibsa" 1
ê "istt" "bikesc" 60 80 110
~ÇÇ = @Çì FLASHING_BIKE
// CREATE PROCESS TO CREATE THE FLASHING IMAGE OF THE BIKE
"isub" ""
"isdb" ""
"ipub" ""
"ipdb" ""
"ixtb" $Ç¡ "EXIT/FSORTIE/GZURÜCK"
// SUSPEND TO ALLOW UPDATE
â
// JUMP TO MAIN LOOP
J #Çÿ
:AIDB_BUTTON // OPEN DATA TEXT FIELD
@Çå (`ü¡ )
J #ÇÜ
:AIAB_BUTTON // LOWER BUTTON
@Çå (`ü« )
// EXIT MONITOR & LOWER ELEVATOR
~Çü = 1
J #Ç▒
:ADLB_BUTTON // HANGER LOG INFO
@Çå (`ü» )
J #ÇÖ
:SUPB_REPEAT
:SUPB_BUTTON
@Çå (`ü░ )
k "hltt" $Ç╖
J #Çÿ
:SDNB_REPEAT
:SDNB_BUTTON
@Çå (`ü░ )
k "hltt" $Ç╕
J #Çÿ
:PUPB_REPEAT
:PUPB_BUTTON
@Çå (`ü▒ )
k "hltt" $Ç│
J #Çÿ
:PDNB_REPEAT
:PDNB_BUTTON
@Çå (`ü▒ )
k "hltt" $Ç┤
J #Çÿ
:HXTB_BUTTON
@Çå (`ü¡ )
J #Çù
:ISUB_REPEAT
:ISUB_BUTTON
@Çå (`ü░ )
k "istt" $Ç╖
J #Çÿ
:ISDB_REPEAT
:ISDB_BUTTON
@Çå (`ü░ )
k "istt" $Ç╕
J #Çÿ
:IPUB_REPEAT
:IPUB_BUTTON
@Çå (`ü▒ )
k "istt" $Ç│
J #Çÿ
:IPDB_REPEAT
:IPDB_BUTTON
@Çå (`ü▒ )
k "istt" $Ç┤
J #Çÿ
:IXTB_BUTTON
@Çå (`ü▓ )
~ÇÇ
~ÇÇ = 0
J #Çù
:AXTB_BUTTON // EXIT
@Çå (`ü░ )
:ESCAPE_BUTTON
@Çå (`ü▒ )
I ~Çé = 1 THEN
i LEX BIKEMON
~ÇÇ
I (~Çü = 1) THEN
{
// WAIT TO ALLOW THE PLAYER TO ORIENT HIMSELF TO THE NEW CAMMERA VIEW AFTER MONITOR EXIT
A OFF
W 20
M WALK_BACK CONTINUE
W 20
// LOWER THE ELEVATOR
@Ç¥ LOWER_GARAGE_ELEVATOR
}
}
// 7.XX CONTROL ROOM/SATTELITE MONITOR (XX - NOT LISTED IN SCREENPLAY)
{ CR_SATTELITE_MONITOR
// THE SATTELITE MONITOR IS BUILD INTO THE HANGER MONITOR TO SAVE ON
// ART FILE SPACE :)
"hngr"
m
// MAKE SURE PTR OUT OF THE WAY
─ (329,219)
//IF (_LAKE_OPEN) THEN
//MON_SETFRAME "sbka" 2
//ELSE
"sbka" 1
"sadl" $Ǽ "MSS SATTELITE VIEW/FMSS VUE SATTELITE/GMSS SATELLITENKAMERA"
"sesl" "EXCAVATION SITE/FEXCAVATION SITE/GAUSGRABUNG"
"sd1l" "DAEDALUS/FDAEDALUS/GDAEDALUS"
"sd2l" "BASE/FBASE/GSTÜTZPUNKT"
"spgl" "PASSAGE/FPASSAGE/GZUTRITT"
"srtl" "RESTRICTED/FINTERDIT/GVERBOTEN"
:SATTELITE_LOOP
â
J #Ç│
:ESCAPE_BUTTON
@Çå (`ü▓ )
}
// 7.XX CONTROL ROOM/HANGER MONITOR (XX - NOT LISTED IN SCREENPLAY)
// SEE HANGER MONITOR
[ FLASHING_BIKE
// THIS PROCESS FLASHES AN IMAGE OF THE BIKE IN AN ENDLESS LOOP
// IT IS CREATED AND DESTROYED BY THE HANGER MONITOR PROCESS
:LOOP
00:00 "issa" 1
00:25 "issa" 2
00:27 "issa" 3
01:22 "issa" 2
01:24 ò
J #Ç╢
]
// 7.26 CONTROL ROOM/BASE EVACUATION-AUTOMATED SYSTEMS MONITOR
//_CALLING_AREA == _PARAGONMONITORAREAID
// 7.27 CONTROL ROOM/MONDITE PARAGON MONITOR
//_CALLING_AREA == _EVACUATIONMONITORAREAID
{ CR_MONITOR _CALLING_AREA
P ~Çü
~Çü = 0
// GENARIC CONTROL ROOM MONITORS
"conm"
m
// IF LEX IS IN THE HARDSUIT THEN SHOW THE HARD SUIT REFLECTION
I @Ç⌐ (HARD) THEN
"hrda" 1
"csub" ""
"csdb" ""
"cpdb" ""
"cpub" ""
"cxtb" $Ç¡ "EXIT/FSORTIE/GZURÜCK"
N ( ~ÇÇ )
{
U $âç
{
~Çü = 1
ê "cont" "parag"
X ÇÇ
}
U $âê
{
~Çü = 2
ê "cont" "evac"
X ÇÇ
}
U $âë
{
ê "cont" "hist"
X ÇÇ
}
U $âè
{
ê "cont" "arch"
X ÇÇ
}
// ALL OTHER GENERAL INFORMATION TEXT TYPES NEED TO BE LISTED
}
:CONTROL_MONITOR_LOOP
â
J #Ç╕
:CPUB_REPEAT
:CPUB_BUTTON
@Çå (`ü▒ )
k "cont" $Ç│
// EVENTUALLY THIS NEED A CASE ON _CALLING AREA TO DEFINE SCROLLING LIST
J #Ç╕
:CPDB_REPEAT
:CPDB_BUTTON
@Çå (`ü▒ )
k "cont" $Ç┤
// EVENTUALLY THIS NEED A CASE ON _CALLING AREA TO DEFINE SCROLLING LIST
J #Ç╕
:CSUB_REPEAT
:CSUB_BUTTON
@Çå (`ü░ )
k "cont" $Ç╖
// EVENTUALLY THIS NEED A CASE ON _CALLING AREA TO DEFINE SCROLLING LIST
J #Ç╕
:CSDB_REPEAT
:CSDB_BUTTON
@Çå (`ü░ )
k "cont" $Ç╕
// EVENTUALLY THIS NEED A CASE ON _CALLING AREA TO DEFINE SCROLLING LIST
J #Ç╕
:CXTB_BUTTON
@Çå (`ü▒ )
:ESCAPE_BUTTON
@Çå (`ü▓ )
I ~Çü = 1 THEN
i LEX PARGON
I ~Çü = 2 THEN
i LEX EVAC
}
// **** REAL-TIME PROCESSES *****
[ HARD_SUIT_CLOSE_CON
00:00 ^éï = 1
^éî = 1
@Çå `â¿
00:04 ^éï = 2
^éî = 2
00:08 ^éï = 3
^éî = 3
00:12 ^éï = 4
^éî = 4
00:16 ^éï = 5
^éî = 5
00:20 ^éï = 6
^éî = 6
00:24 ^éï = 7
^éî = 7
00:28 ^éï = 8
^éî = 8
01:02 ^éï = 9
^éî = 9
01:06 ^éï = 10
^éî = 10
01:10 ^éï = 11
^éî = 11
01:14 ^éï = 12
^éî = 12
01:18 ^éï = 13
^éî = 13
01:22 ^éï = 14
^éî = 14
01:26 ^éï = 15
^éî = 15
02:00 ^éï = 16
^éî = 16
02:04 ^éï = 17
^éî = 17
02:08 ^éï = 18
^éî = 18
02:10 ^éï = 19
^éî = 19
02:12 ^éï = 20
^éî = 20
02:14 ^éï = 21
^éî = 21
02:16 ^éï = 22
^éî = 22
02:18 ^éï = 23
^éî = 23
02:20 ^éï = 24
^éî = 24
02:22 ^éï = 25
^éî = 25
02:24 ^éï = 26
^éî = 26
02:26 ^éï = 27
^éî = 27
02:28 ^éï = 28
^éî = 28
]
[ HARD_SUIT_OPEN_CON
00:00 ^éï = 28
^éî = 28
@Çå `â¿
00:04 ^éï = 27
^éî = 27
00:08 ^éï = 26
^éî = 26
00:12 ^éï = 25
^éî = 25
00:16 ^éï = 24
^éî = 24
00:20 ^éï = 23
^éî = 23
00:24 ^éï = 22
^éî = 22
00:28 ^éï = 21
^éî = 21
01:02 ^éï = 20
^éî = 20
01:06 ^éï = 19
^éî = 19
01:10 ^éï = 18
^éî = 18
01:14 ^éï = 17
^éî = 17
01:18 ^éï = 16
^éî = 16
01:22 ^éï = 15
^éî = 15
01:26 ^éï = 14
^éî = 14
02:00 ^éï = 13
^éî = 13
02:04 ^éï = 12
^éî = 12
02:08 ^éï = 11
^éî = 11
02:12 ^éï = 10
^éî = 10
02:16 ^éï = 9
^éî = 9
02:18 ^éï = 8
^éî = 8
02:20 ^éï = 7
^éî = 7
02:22 ^éï = 6
^éî = 6
02:24 ^éï = 5
^éî = 5
02:26 ^éï = 4
^éî = 4
02:28 ^éï = 3
^éî = 3
03:00 ^éï = 2
^éî = 2
03:02 ^éï = 1
^éî = 1
]
[ CNT_DOOR_OPEN
^å░ = 1
@Çå `üé
00:00 ^Ç╢ = 1
00:02 ^Ç╢ = 2
00:04 ^Ç╢ = 3
00:06 ^Ç╢ = 4
00:09 ^Ç╢ = 5
00:11 ^Ç╢ = 6
00:13 ^Ç╢ = 7
00:15 ^Ç╢ = 8
00:17 ^Ç╢ = 9
00:19 ^Ç╢ = 10
00:21 ^Ç╢ = 11
00:22 ^Ç╢ = 12
00:24 ^Ç╢ = 13
00:26 ^Ç╢ = 14
00:28 ^Ç╢ = 15
01:00 ^Ç╢ = 16
01:02 ^Ç╢ = 0
^å░ = 0
^äú = $é║
]
[ CNT_DOOR_CLOSE
^å░ = 1
@Çå `üé
00:00 ^Ç╢ = 0
00:02 ^Ç╢ = 16
00:04 ^Ç╢ = 15
00:06 ^Ç╢ = 14
00:08 ^Ç╢ = 13
00:10 ^Ç╢ = 12
00:12 ^Ç╢ = 11
00:14 ^Ç╢ = 10
00:16 ^Ç╢ = 9
00:18 ^Ç╢ = 8
00:20 ^Ç╢ = 7
00:22 ^Ç╢ = 6
00:24 ^Ç╢ = 5
00:26 ^Ç╢ = 4
00:28 ^Ç╢ = 3
01:00 ^Ç╢ = 2
01:02 ^Ç╢ = 1
01:04 @Çå `üà
^å░ = 0
^äú = $é╗
]
{ HANGRMON_USE
// I GUESS CAMERA ANGLE MAKES IT LOOK LIKE CAN FACE 'LEFT' MORE & BE IN COMPASS
I ( @Çä IN (-125,135) ) THEN
é // NOT FACING MONITOR
^Ç┤ ++
//GO HANGLOC WALK 10
//FACE ??
M LOOK_CONSOLE FREEZE
@Ç¥ CR_HANGERMONITOR
M STAND CONTINUE
^Ç┤ --
}
{ SATMON1_USE
I ( @Çä IN (-135,135) ) THEN
é // NOT FACING MONITOR
^Ç┤ ++
//GO SALTLOC WALK 10
£ SATLOC1 GRADUAL
M LOOK_CONSOLE FREEZE
@Ç¥ CR_SATTELITE_MONITOR
M STAND CONTINUE
^Ç┤ --
}
{ SATMON2_USE
I ( @Çä IN (-135,135) ) THEN
é // NOT FACING MONITOR
^Ç┤ ++
//GO SALTLOC WALK 10
£ SATLOC2 GRADUAL
M LOOK_CONSOLE FREEZE
@Ç¥ CR_SATTELITE_MONITOR
M STAND CONTINUE
^Ç┤ --
}
{ ARCHLMON_USE
I ( @Çä IN (-90,180) ) THEN
é // NOT FACING MONITOR
^Ç┤ ++
//GO ARCHLOC WALK 10
£ ARCHLOC GRADUAL
M LOOK_CONSOLE FREEZE
@Ç¥ CR_MONITOR $âè
M STAND CONTINUE
^Ç┤ --
}
// EVAC MON ON EAST WALL
{ EVACMON1_USE
^Ç┤ ++
I ( @Çä IN (-150,-30) ) THEN
{
£ EVACLOC1 GRADUAL
M LOOK_CONSOLE FREEZE
@Ç¥ CR_MONITOR $âê
M STAND CONTINUE
}
^Ç┤ --
}
{ EVACMON2_USE
^Ç┤ ++
I ( @Çä IN (-150,-30) ) THEN
{
£ EVACLOC2 GRADUAL
M LOOK_CONSOLE FREEZE
@Ç¥ CR_MONITOR $âê
M STAND CONTINUE
}
^Ç┤ --
}
// EVAC MON ON MIDDLE SOUTH WALL
{ EVCMON1_USE
^Ç┤ ++
I ( @Çä IN (-60,60) ) THEN
{
£ EVCLOC1 GRADUAL
M LOOK_CONSOLE FREEZE
@Ç¥ CR_MONITOR $âê
M STAND CONTINUE
}
^Ç┤ --
}
{ EVCMON2_USE
^Ç┤ ++
I ( @Çä IN (-60,60) ) THEN
{
£ EVCLOC2 GRADUAL
M LOOK_CONSOLE FREEZE
@Ç¥ CR_MONITOR $âê
M STAND CONTINUE
}
^Ç┤ --
}
{ HISTORYMON
M LOOK_CONSOLE FREEZE
@Ç¥ CR_MONITOR $âë
M STAND CONTINUE
^Ç┤ --
}
{ HISTMON1_USE
I ( @Çä IN (-135,135) ) THEN
é // NOT FACING MONITOR
^Ç┤ ++
£ HISTLOC1 GRADUAL
@Çì HISTORYMON
}
{ HISTMON2_USE
I ( @Çä IN (-135,135) ) THEN
é // NOT FACING MONITOR
^Ç┤ ++
£ HISTLOC2 GRADUAL
@Çì HISTORYMON
}
{ HISTMON3_USE
I ( @Çä IN (-135,135) ) THEN
é // NOT FACING MONITOR
^Ç┤ ++
£ HISTLOC3 GRADUAL
@Çì HISTORYMON
}
{ PARAGMON_USE
^Ç┤ ++
I ( @Çä IN (-150,-30) ) THEN
{
//GO PARAGLOC WALK 10
£ PARAGLOC GRADUAL
M LOOK_CONSOLE FREEZE
@Ç¥ CR_MONITOR $âç
M STAND CONTINUE
}
^Ç┤ --
}
// 7.22 CONTROL ROOM/MAINTENANCE MONITOR
// CR_MAINTENANCEMONITOR
{ MAINTMON_USE
^Ç┤ ++
I ( @Çä IN (-60,60) ) THEN
{
// USED TO ASSIGN _LEVEL HERE, BUT NOW THE LEVEL_LOAD ROUTINES
// HANDLE THIS AUTOMATICALLY. -KLD
//GO MAINTLOC WALK 10
£ MAINTLOC GRADUAL
M LOOK_AT_MON FREEZE
// CR_MAINTENANCEMONITOR USES GR_MAINTENANCELOG
@Ç¥ GR_MAINTENANCELOG
M STAND CONTINUE
}
^Ç┤ --
}
{ REACTMON_USE
^Ç┤ ++
I ( @Çä IN (-60,60) ) THEN
{
//GO REACTLOC WALK 10
£ REACTLOC GRADUAL
M LOOK_AT_MON FREEZE
@Ç¥ CR_REACTORMONITOR
M STAND CONTINUE
}
^Ç┤ --
}
//$ 26 - version number